!
function(e) {
	var t = {};
	function r(n) {
		if (t[n]) return t[n].exports;
		var o = t[n] = {
			i: n,
			l: !1,
			exports: {}
		};
		return e[n].call(o.exports, o, o.exports, r),
		o.l = !0,
		o.exports
	}
	r.m = e,
	r.c = t,
	r.d = function(e, t, n) {
		r.o(e, t) || Object.defineProperty(e, t, {
			enumerable: !0,
			get: n
		})
	},
	r.r = function(e) {
		"undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {
			value: "Module"
		}),
		Object.defineProperty(e, "__esModule", {
			value: !0
		})
	},
	r.t = function(e, t) {
		if (1 & t && (e = r(e)), 8 & t) return e;
		if (4 & t && "object" == typeof e && e && e.__esModule) return e;
		var n = Object.create(null);
		if (r.r(n), Object.defineProperty(n, "default", {
			enumerable: !0,
			value: e
		}), 2 & t && "string" != typeof e) for (var o in e) r.d(n, o,
		function(t) {
			return e[t]
		}.bind(null, o));
		return n
	},
	r.n = function(e) {
		var t = e && e.__esModule ?
		function() {
			return e.
		default
		}:
		function() {
			return e
		};
		return r.d(t, "a", t),
		t
	},
	r.o = function(e, t) {
		return Object.prototype.hasOwnProperty.call(e, t)
	},
	r.p = ".",
	r(r.s = 26)
} ({
	0 : function(e, t) {
		e.exports = function(e) {
			return e && e.__esModule ? e: {
			default:
				e
			}
		}
	},
	1 : function(e, t, r) {
		"use strict";
		var n = r(0)(r(0));
		Object.defineProperty(t, "__esModule", {
			value: !0
		}),
		t.decipher = t.cipher = t.fetch_retry = t.fetchWithTimeout = void 0;
		var o = r(2),
		a = (0, n.
	default)(o);
		function i(e, t) {
			var r = Object.keys(e);
			if (Object.getOwnPropertySymbols) {
				var n = Object.getOwnPropertySymbols(e);
				t && (n = n.filter((function(t) {
					return Object.getOwnPropertyDescriptor(e, t).enumerable
				}))),
				r.push.apply(r, n)
			}
			return r
		}
		function u(e) {
			for (var t = 1; t < arguments.length; t++) {
				var r = null != arguments[t] ? arguments[t] : {};
				t % 2 ? i(Object(r), !0).forEach((function(t) { (0, a.
				default)(e, t, r[t])
				})) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : i(Object(r)).forEach((function(t) {
					Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(r, t))
				}))
			}
			return e
		}
		t.setStoreWithExpiry = s,
		t.getStoreWithExpiry = f,
		t.plusDlCount = function() {
			var e = f("dailyDlCount");
			e = e ? parseInt(e) + 1 : 1;
			var t = 60 * (r = (new Date).getHours(), n = (new Date).getMinutes(), 1440 - 60 * r - n) * 1e3;
			var r, n;
			s("dailyDlCount", e, t)
		};
		var c = t.fetchWithTimeout = function(e) {
			var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
			r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 5e3,
			n = new AbortController,
			o = u({},
			t, {
				signal: n.signal
			});
			setTimeout((function() {
				n.abort()
			}), r);
			return fetch(e, o).then((function(e) {
				if (!e.ok) throw new Error("".concat(e.status, ": ").concat(e.statusText));
				return e
			})).
			catch((function(e) {
				if ("AbortError" === e.name) throw new Error("Response timed out");
				throw new Error(e.message)
			}))
		};
		t.fetch_retry = function e(t, r, n) {
			var o = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : 1;
			return c(t, r, n).
			catch((function(a) {
				if (1 === o) throw a;
				return e(t, r, n, o - 1)
			}))
		},
		t.cipher = function(e) {
			var t = function(e) {
				return e.split("").map((function(e) {
					return e.charCodeAt(0)
				}))
			},
			r = function(e) {
				return ("0" + Number(e).toString(16)).substr( - 2)
			},
			n = function(r) {
				return t(e).reduce((function(e, t) {
					return e ^ t
				}), r)
			};
			return function(e) {
				return e.split("").map(t).map(n).map(r).join("")
			}
		},
		t.decipher = function(e) {
			var t = function(t) {
				return (r = e, r.split("").map((function(e) {
					return e.charCodeAt(0)
				}))).reduce((function(e, t) {
					return e ^ t
				}), t);
				var r
			};
			return function(e) {
				return e.match(/.{1,2}/g).map((function(e) {
					return parseInt(e, 16)
				})).map(t).map((function(e) {
					return String.fromCharCode(e)
				})).join("")
			}
		};
		function s(e, t, r) {
			var n = {
				value: t,
				expiry: (new Date).getTime() + r
			};
			localStorage.setItem(e, JSON.stringify(n))
		}
		function f(e) {
			var t = localStorage.getItem(e);
			if (!t) return null;
			var r = JSON.parse(t);
			return (new Date).getTime() > r.expiry ? (localStorage.removeItem(e), null) : r.value
		}
	},
	2 : function(e, t) {
		e.exports = function(e, t, r) {
			return t in e ? Object.defineProperty(e, t, {
				value: r,
				enumerable: !0,
				configurable: !0,
				writable: !0
			}) : e[t] = r,
			e
		}
	},
	26 : function(e, t, r) {
		"use strict";
		var n, o, a, i = r(0)(r(0)),
		u = r(4),
		c = (0, i.
	default)(u),
		s = r(5),
		f = (0, i.
	default)(s),
		l = (n = (0, f.
	default)(c.
	default.mark((function e(t, r, n) {
			var o, a;
			return c.
		default.wrap((function(e) {
				for (;;) switch (e.prev = e.next) {
				case 0:
					return e.next = 2,
					(0, d.fetchTheDom)(t);
				case 2:
					o = e.sent,
					a = {
						type: "webResDom",
						resp: o,
						fetchType: r,
						extraDict: n
					},
					window.postMessage(a, location.href);
				case 5:
				case "end":
					return e.stop()
				}
			}), e)
		}))),
		function(e, t, r) {
			return n.apply(this, arguments)
		}),
		p = (o = (0, f.
	default)(c.
	default.mark((function e() {
			var t, r, n, o, a, i, u, s, f;
			return c.
		default.wrap((function(e) {
				for (;;) switch (e.prev = e.next) {
				case 0:
					return f = function(e) {
						var t = document.getElementsByClassName("recModeForProAware"),
						r = !0,
						n = !1,
						o = void 0;
						try {
							for (var a, i = t[Symbol.iterator](); ! (r = (a = i.next()).done); r = !0) {
								var u = a.value;
								u.style.display = e ? "block": "none"
							}
						} catch(e) {
							n = !0,
							o = e
						} finally {
							try {
								r || null == i.
								return || i.
								return ()
							} finally {
								if (n) throw o
							}
						}
					},
					s = function(e) {
						var t = document.getElementsByClassName("maxRecTimeLimitAware"),
						r = !0,
						n = !1,
						o = void 0;
						try {
							for (var a, i = t[Symbol.iterator](); ! (r = (a = i.next()).done); r = !0) {
								var u = a.value;
								u.style.display = e ? "block": "none"
							}
						} catch(e) {
							n = !0,
							o = e
						} finally {
							try {
								r || null == i.
								return || i.
								return ()
							} finally {
								if (n) throw o
							}
						}
					},
					e.next = 4,
					(0, d.getBgOptions)();
				case 4:
					if (t = g(t = e.sent), (0, d.setBgOptions)(t), !(t.counter >= 30)) {
						e.next = 28;
						break
					}
					for (r = document.getElementsByClassName("proNotice"), n = !0, o = !1, a = void 0, e.prev = 12, i = r[Symbol.iterator](); ! (n = (u = i.next()).done); n = !0) u.value.style.display = "inline";
					e.next = 20;
					break;
				case 16:
					e.prev = 16,
					e.t0 = e.
					catch(12),
					o = !0,
					a = e.t0;
				case 20:
					e.prev = 20,
					e.prev = 21,
					n || null == i.
					return || i.
					return ();
				case 23:
					if (e.prev = 23, !o) {
						e.next = 26;
						break
					}
					throw a;
				case 26:
					return e.finish(23);
				case 27:
					return e.finish(20);
				case 28:
					setTimeout((function() {
						var e = document.getElementById("dlType");
						e && "Recording" == (e = e.innerText) && (t.rcounterr > 30 ? (s(!0), f(!1)) : (s(!1), f(!0)))
					}), 3e3);
				case 29:
				case "end":
					return e.stop()
				}
			}), e, null, [[12, 16, 20, 28], [21, , 23, 27]])
		}))),
		function() {
			return o.apply(this, arguments)
		}),
		d = r(7),
		h = r(1),
		m = navigator.userAgent.includes("Chrome") ? chrome: browser;
		function y() {
			var e = window.btoa("google analytics param v3");
			localStorage.getItem("ga_analyseed_param") && (e = localStorage.getItem("ga_analyseed_param")),
			document.getElementById("id_input_crsf") && (document.getElementById("id_input_crsf").value = e)
		}
		function v() {
			var e = new URL(document.location.href),
			t = e.pathname.indexOf("/accounts/profile/") >= 0,
			r = e.pathname.indexOf("hls.vhtml") >= 0,
			n = e.pathname.indexOf("dlm.vhtml") >= 0;
			if (r || t || n) {
				if (document.getElementById("email")) {
					var o = [];
					o.push(document.getElementById("email").innerHTML),
					o.push(document.getElementById("endDate").innerHTML),
					o.push(document.getElementById("memberType").innerHTML),
					o.push(document.getElementById("memberStatus").innerHTML);
					var a = o.join("||");
					a = (0, h.cipher)("CocoCut pro user")(a),
					(0, d.setUserInfo)(a),
					localStorage.setItem("ga_analyseed_param", window.btoa("google analytics param v4"))
				}
			} else e.pathname.indexOf("/accounts/login/") >= 0 && document.getElementById("cocoCutLoginPage") && (0, d.setUserInfo)()
		}
		function g(e) {
			var t = function(e) {
				localStorage.dl_option = window.btoa(JSON.stringify(e))
			},
			r = function() {
				var e = localStorage.dl_option,
				r = {
					r0: 0,
					r1: 0
				};
				try {
					e && (e = window.atob(e), Object.assign(r, JSON.parse(e))),
					r.r0 = Math.max(0, Math.floor(Number(r.r0) || 0)),
					r.r1 = Math.max(0, Math.floor(Number(r.r1) || 0)),
					t(r)
				} catch(e) {
					console.log(e.stack)
				}
				return r
			} ();
			return e.counter < r.r0 ? e.counter = r.r0: r.r0 = e.counter,
			e.rcounterr < r.r1 ? e.rcounterr = r.r1: r.r1 = e.rcounterr,
			t(r),
			e
		}
		document.addEventListener("DOMContentLoaded", (a = (0, f.
	default)(c.
	default.mark((function e(t) {
			var r;
			return c.
		default.wrap((function(e) {
				for (;;) switch (e.prev = e.next) {
				case 0:
					(r = document.createElement("div")).innerHTML = '<span id="extVersion">' + m.runtime.getManifest().version + "</span>",
					r.style.display = "none",
					r.setAttribute("id", "cocoCutDLinject"),
					document.body.appendChild(r),
					v(),
					location.href.indexOf("accounts/signup") > -1 && y(),
					p();
				case 8:
				case "end":
					return e.stop()
				}
			}), e)
		}))),
		function(e) {
			return a.apply(this, arguments)
		})),
		window.addEventListener("message", (function(e) {
			if (e.source === window) {
				var t, r = e.data;
				if (r.type) switch (r.type) {
				case "setHeader":
					t = {
						msgType: "setHead",
						oneHeadDomain: r.domain,
						oneHeadValue: r.value,
						keepTime: r.keepTime
					},
					(0, d.setHeader)(t);
					break;
				case "getDom":
					t = {
						msgType: "getDom",
						url: r.url,
						domLabel: r.domLabel,
						reqInit: r.reqInit,
						fetchTimeout: r.fetchTimeout,
						retryCount: r.retryCount
					},
					l(t, r.fetchType, r.extraDict);
					break;
				case "unsetHeader":
					(0, d.unsetHeader)({});
					break;
				case "keepSetHeader":
					t = {
						keepTime: r.keepSetHeader
					},
					(0, d.keepSetHeader)(t);
					break;
				case "sendMsgToPipe":
					(0, d.tellBGbroadcastMsgFromPipe)(r)
				}
			}
		}), !1),
		(0, d.onMessage)(d.EVENTS.BROADCASTPIPEMESSAGE, (function(e) {
			var t = e.msg,
			r = e.targetUrl,
			n = e.exact,
			o = {
				type: "sendMsgToPipeFromContent",
				message: {
					title: t.title,
					content: t.content
				}
			};
			n ? location.href.indexOf == r && window.postMessage(o, location.href) : location.href.indexOf(r) > -1 && window.postMessage(o, location.href)
		}))
	},
	4 : function(e, t, r) {
		e.exports = r(6)
	},
	5 : function(e, t) {
		function r(e, t, r, n, o, a, i) {
			try {
				var u = e[a](i),
				c = u.value
			} catch(e) {
				return void r(e)
			}
			u.done ? t(c) : Promise.resolve(c).then(n, o)
		}
		e.exports = function(e) {
			return function() {
				var t = this,
				n = arguments;
				return new Promise((function(o, a) {
					var i = e.apply(t, n);
					function u(e) {
						r(i, o, a, u, c, "next", e)
					}
					function c(e) {
						r(i, o, a, u, c, "throw", e)
					}
					u(void 0)
				}))
			}
		}
	},
	6 : function(e, t, r) {
		var n = function(e) {
			"use strict";
			var t, r = Object.prototype,
			n = r.hasOwnProperty,
			o = "function" == typeof Symbol ? Symbol: {},
			a = o.iterator || "@@iterator",
			i = o.asyncIterator || "@@asyncIterator",
			u = o.toStringTag || "@@toStringTag";
			function c(e, t, r, n) {
				var o = t && t.prototype instanceof m ? t: m,
				a = Object.create(o.prototype),
				i = new P(n || []);
				return a._invoke = function(e, t, r) {
					var n = f;
					return function(o, a) {
						if (n === p) throw new Error("Generator is already running");
						if (n === d) {
							if ("throw" === o) throw a;
							return L()
						}
						for (r.method = o, r.arg = a;;) {
							var i = r.delegate;
							if (i) {
								var u = O(i, r);
								if (u) {
									if (u === h) continue;
									return u
								}
							}
							if ("next" === r.method) r.sent = r._sent = r.arg;
							else if ("throw" === r.method) {
								if (n === f) throw n = d,
								r.arg;
								r.dispatchException(r.arg)
							} else "return" === r.method && r.abrupt("return", r.arg);
							n = p;
							var c = s(e, t, r);
							if ("normal" === c.type) {
								if (n = r.done ? d: l, c.arg === h) continue;
								return {
									value: c.arg,
									done: r.done
								}
							}
							"throw" === c.type && (n = d, r.method = "throw", r.arg = c.arg)
						}
					}
				} (e, r, i),
				a
			}
			function s(e, t, r) {
				try {
					return {
						type: "normal",
						arg: e.call(t, r)
					}
				} catch(e) {
					return {
						type: "throw",
						arg: e
					}
				}
			}
			e.wrap = c;
			var f = "suspendedStart",
			l = "suspendedYield",
			p = "executing",
			d = "completed",
			h = {};
			function m() {}
			function y() {}
			function v() {}
			var g = {};
			g[a] = function() {
				return this
			};
			var E = Object.getPrototypeOf,
			w = E && E(E(M([])));
			w && w !== r && n.call(w, a) && (g = w);
			var b = v.prototype = m.prototype = Object.create(g);
			function _(e) { ["next", "throw", "return"].forEach((function(t) {
					e[t] = function(e) {
						return this._invoke(t, e)
					}
				}))
			}
			function S(e) {
				var t;
				this._invoke = function(r, o) {
					function a() {
						return new Promise((function(t, a) { !
							function t(r, o, a, i) {
								var u = s(e[r], e, o);
								if ("throw" !== u.type) {
									var c = u.arg,
									f = c.value;
									return f && "object" == typeof f && n.call(f, "__await") ? Promise.resolve(f.__await).then((function(e) {
										t("next", e, a, i)
									}), (function(e) {
										t("throw", e, a, i)
									})) : Promise.resolve(f).then((function(e) {
										c.value = e,
										a(c)
									}), (function(e) {
										return t("throw", e, a, i)
									}))
								}
								i(u.arg)
							} (r, o, t, a)
						}))
					}
					return t = t ? t.then(a, a) : a()
				}
			}
			function O(e, r) {
				var n = e.iterator[r.method];
				if (n === t) {
					if (r.delegate = null, "throw" === r.method) {
						if (e.iterator.
						return && (r.method = "return", r.arg = t, O(e, r), "throw" === r.method)) return h;
						r.method = "throw",
						r.arg = new TypeError("The iterator does not provide a 'throw' method")
					}
					return h
				}
				var o = s(n, e.iterator, r.arg);
				if ("throw" === o.type) return r.method = "throw",
				r.arg = o.arg,
				r.delegate = null,
				h;
				var a = o.arg;
				return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, h) : a: (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, h)
			}
			function x(e) {
				var t = {
					tryLoc: e[0]
				};
				1 in e && (t.catchLoc = e[1]),
				2 in e && (t.finallyLoc = e[2], t.afterLoc = e[3]),
				this.tryEntries.push(t)
			}
			function T(e) {
				var t = e.completion || {};
				t.type = "normal",
				delete t.arg,
				e.completion = t
			}
			function P(e) {
				this.tryEntries = [{
					tryLoc: "root"
				}],
				e.forEach(x, this),
				this.reset(!0)
			}
			function M(e) {
				if (e) {
					var r = e[a];
					if (r) return r.call(e);
					if ("function" == typeof e.next) return e;
					if (!isNaN(e.length)) {
						var o = -1,
						i = function r() {
							for (; ++o < e.length;) if (n.call(e, o)) return r.value = e[o],
							r.done = !1,
							r;
							return r.value = t,
							r.done = !0,
							r
						};
						return i.next = i
					}
				}
				return {
					next: L
				}
			}
			function L() {
				return {
					value: t,
					done: !0
				}
			}
			return y.prototype = b.constructor = v,
			v.constructor = y,
			v[u] = y.displayName = "GeneratorFunction",
			e.isGeneratorFunction = function(e) {
				var t = "function" == typeof e && e.constructor;
				return !! t && (t === y || "GeneratorFunction" === (t.displayName || t.name))
			},
			e.mark = function(e) {
				return Object.setPrototypeOf ? Object.setPrototypeOf(e, v) : (e.__proto__ = v, u in e || (e[u] = "GeneratorFunction")),
				e.prototype = Object.create(b),
				e
			},
			e.awrap = function(e) {
				return {
					__await: e
				}
			},
			_(S.prototype),
			S.prototype[i] = function() {
				return this
			},
			e.AsyncIterator = S,
			e.async = function(t, r, n, o) {
				var a = new S(c(t, r, n, o));
				return e.isGeneratorFunction(r) ? a: a.next().then((function(e) {
					return e.done ? e.value: a.next()
				}))
			},
			_(b),
			b[u] = "Generator",
			b[a] = function() {
				return this
			},
			b.toString = function() {
				return "[object Generator]"
			},
			e.keys = function(e) {
				var t = [];
				for (var r in e) t.push(r);
				return t.reverse(),
				function r() {
					for (; t.length;) {
						var n = t.pop();
						if (n in e) return r.value = n,
						r.done = !1,
						r
					}
					return r.done = !0,
					r
				}
			},
			e.values = M,
			P.prototype = {
				constructor: P,
				reset: function(e) {
					if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(T), !e) for (var r in this)"t" === r.charAt(0) && n.call(this, r) && !isNaN( + r.slice(1)) && (this[r] = t)
				},
				stop: function() {
					this.done = !0;
					var e = this.tryEntries[0].completion;
					if ("throw" === e.type) throw e.arg;
					return this.rval
				},
				dispatchException: function(e) {
					if (this.done) throw e;
					var r = this;
					function o(n, o) {
						return u.type = "throw",
						u.arg = e,
						r.next = n,
						o && (r.method = "next", r.arg = t),
						!!o
					}
					for (var a = this.tryEntries.length - 1; a >= 0; --a) {
						var i = this.tryEntries[a],
						u = i.completion;
						if ("root" === i.tryLoc) return o("end");
						if (i.tryLoc <= this.prev) {
							var c = n.call(i, "catchLoc"),
							s = n.call(i, "finallyLoc");
							if (c && s) {
								if (this.prev < i.catchLoc) return o(i.catchLoc, !0);
								if (this.prev < i.finallyLoc) return o(i.finallyLoc)
							} else if (c) {
								if (this.prev < i.catchLoc) return o(i.catchLoc, !0)
							} else {
								if (!s) throw new Error("try statement without catch or finally");
								if (this.prev < i.finallyLoc) return o(i.finallyLoc)
							}
						}
					}
				},
				abrupt: function(e, t) {
					for (var r = this.tryEntries.length - 1; r >= 0; --r) {
						var o = this.tryEntries[r];
						if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
							var a = o;
							break
						}
					}
					a && ("break" === e || "continue" === e) && a.tryLoc <= t && t <= a.finallyLoc && (a = null);
					var i = a ? a.completion: {};
					return i.type = e,
					i.arg = t,
					a ? (this.method = "next", this.next = a.finallyLoc, h) : this.complete(i)
				},
				complete: function(e, t) {
					if ("throw" === e.type) throw e.arg;
					return "break" === e.type || "continue" === e.type ? this.next = e.arg: "return" === e.type ? (this.rval = this.arg = e.arg, this.method = "return", this.next = "end") : "normal" === e.type && t && (this.next = t),
					h
				},
				finish: function(e) {
					for (var t = this.tryEntries.length - 1; t >= 0; --t) {
						var r = this.tryEntries[t];
						if (r.finallyLoc === e) return this.complete(r.completion, r.afterLoc),
						T(r),
						h
					}
				},
				catch: function(e) {
					for (var t = this.tryEntries.length - 1; t >= 0; --t) {
						var r = this.tryEntries[t];
						if (r.tryLoc === e) {
							var n = r.completion;
							if ("throw" === n.type) {
								var o = n.arg;
								T(r)
							}
							return o
						}
					}
					throw new Error("illegal catch attempt")
				},
				delegateYield: function(e, r, n) {
					return this.delegate = {
						iterator: M(e),
						resultName: r,
						nextLoc: n
					},
					"next" === this.method && (this.arg = t),
					h
				}
			},
			e
		} (e.exports);
		try {
			regeneratorRuntime = n
		} catch(e) {
			Function("r", "regeneratorRuntime = r")(n)
		}
	},
	7 : function(e, t, r) {
		"use strict";
		var n = r(0)(r(0));
		Object.defineProperty(t, "__esModule", {
			value: !0
		}),
		t.setBgOptions = t.getBgOptions = t.tellBGbroadcastMsgFromPipe = t.setUserInfo = t.keepSetHeader = t.unsetHeader = t.setHeader = t.fetchTheDom = t.EVENTS = void 0;
		var o, a, i, u, c, s, f, l, p = r(4),
		d = (0, n.
	default)(p),
		h = r(5),
		m = (0, n.
	default)(h);
		t.fetchTheDom = (o = (0, m.
	default)(d.
	default.mark((function e(t) {
			var r;
			return d.
		default.wrap((function(e) {
				for (;;) switch (e.prev = e.next) {
				case 0:
					return e.next = 2,
					g(v.FETCH_DOM, t);
				case 2:
					return r = e.sent,
					e.abrupt("return", r);
				case 4:
				case "end":
					return e.stop()
				}
			}), e)
		}))),
		function(e) {
			return o.apply(this, arguments)
		}),
		t.setHeader = (a = (0, m.
	default)(d.
	default.mark((function e(t) {
			var r;
			return d.
		default.wrap((function(e) {
				for (;;) switch (e.prev = e.next) {
				case 0:
					return e.next = 2,
					g(v.SET_HEADER, t);
				case 2:
					return r = e.sent,
					e.abrupt("return", r);
				case 4:
				case "end":
					return e.stop()
				}
			}), e)
		}))),
		function(e) {
			return a.apply(this, arguments)
		}),
		t.unsetHeader = (i = (0, m.
	default)(d.
	default.mark((function e(t) {
			var r;
			return d.
		default.wrap((function(e) {
				for (;;) switch (e.prev = e.next) {
				case 0:
					return e.next = 2,
					g(v.UNSET_HEADER, t);
				case 2:
					return r = e.sent,
					e.abrupt("return", r);
				case 4:
				case "end":
					return e.stop()
				}
			}), e)
		}))),
		function(e) {
			return i.apply(this, arguments)
		}),
		t.keepSetHeader = (u = (0, m.
	default)(d.
	default.mark((function e(t) {
			var r;
			return d.
		default.wrap((function(e) {
				for (;;) switch (e.prev = e.next) {
				case 0:
					return e.next = 2,
					g(v.KEEP_SET_HEADER, t);
				case 2:
					return r = e.sent,
					e.abrupt("return", r);
				case 4:
				case "end":
					return e.stop()
				}
			}), e)
		}))),
		function(e) {
			return u.apply(this, arguments)
		}),
		t.setUserInfo = (c = (0, m.
	default)(d.
	default.mark((function e(t) {
			var r;
			return d.
		default.wrap((function(e) {
				for (;;) switch (e.prev = e.next) {
				case 0:
					return e.next = 2,
					g(v.SET_USER_INFO, t);
				case 2:
					return r = e.sent,
					e.abrupt("return", r);
				case 4:
				case "end":
					return e.stop()
				}
			}), e)
		}))),
		function(e) {
			return c.apply(this, arguments)
		}),
		t.tellBGbroadcastMsgFromPipe = (s = (0, m.
	default)(d.
	default.mark((function e(t) {
			return d.
		default.wrap((function(e) {
				for (;;) switch (e.prev = e.next) {
				case 0:
					g(v.MESSAGEPIPE, t);
				case 1:
				case "end":
					return e.stop()
				}
			}), e)
		}))),
		function(e) {
			return s.apply(this, arguments)
		}),
		t.getBgOptions = (f = (0, m.
	default)(d.
	default.mark((function e() {
			var t;
			return d.
		default.wrap((function(e) {
				for (;;) switch (e.prev = e.next) {
				case 0:
					return e.next = 2,
					g(v.GET_BG_OPTIONS);
				case 2:
					return t = e.sent,
					e.abrupt("return", t);
				case 4:
				case "end":
					return e.stop()
				}
			}), e)
		}))),
		function() {
			return f.apply(this, arguments)
		}),
		t.setBgOptions = (l = (0, m.
	default)(d.
	default.mark((function e(t) {
			return d.
		default.wrap((function(e) {
				for (;;) switch (e.prev = e.next) {
				case 0:
					g(v.SET_BG_OPTIONS, t);
				case 1:
				case "end":
					return e.stop()
				}
			}), e)
		}))),
		function(e) {
			return l.apply(this, arguments)
		});
		t.onMessage = function(e, t) {
			y.runtime.onMessage.addListener((function(r, n, o) {
				var a = r.eventName,
				i = r.data;
				return a === e && (t(i, o), !0)
			}))
		},
		t.sendMessage = g;
		var y = navigator.userAgent.includes("Chrome") ? chrome: browser,
		v = t.EVENTS = {
			FETCH_DOM: "FETCH_DOM",
			SET_HEADER: "ADD_HEADER",
			UNSET_HEADER: "UNSET_HEADER",
			KEEP_SET_HEADER: "KEEP_SET_HEADER",
			BLOCK_ONE_DOMAIN: "BLOCK_ONE_DOMAIN",
			SET_SPEEDUP_REC: "SET_SPEEDUP_REC",
			SET_USER_INFO: "SET_USER_INFO",
			DLM_NEW_TASK: "DLM_NEW_TASK",
			ISAP: "IS_ACTIVE_MEMBER",
			MESSAGEPIPE: "MESSAGEPIPE",
			BROADCASTPIPEMESSAGE: "BROADCASTPIPEMESSAGE",
			GET_BG_OPTIONS: "GET_BG_OPTIONS",
			SET_BG_OPTIONS: "SET_BG_OPTIONS"
		};
		function g(e, t) {
			return new Promise((function(r) {
				y.runtime.sendMessage({
					eventName: e,
					data: t
				},
				(function(e) {
					r(e)
				}))
			}))
		}
	}
});
